Skip to main content
Glama
northernvariables

FedMCP - Federal Parliamentary Information

page.tsx12.4 kB
// Privacy Policy Page - CanadaGPT import { useTranslations } from 'next-intl'; import { getTranslations } from 'next-intl/server'; import type { Metadata } from 'next'; export async function generateMetadata({ params, }: { params: Promise<{ locale: string }>; }): Promise<Metadata> { const { locale } = await params; const t = await getTranslations({ locale, namespace: 'Privacy' }); return { title: t('title'), description: t('description'), }; } export default function PrivacyPage() { const t = useTranslations('Privacy'); return ( <div className="container mx-auto px-4 py-12 max-w-4xl"> <h1 className="text-4xl font-bold mb-8">{t('title')}</h1> <div className="prose prose-lg dark:prose-invert max-w-none"> <p className="text-muted-foreground mb-6"> <strong>{t('lastUpdated')}</strong> November 8, 2025 </p> {/* Introduction */} <section className="mb-8"> <h2 className="text-2xl font-semibold mb-4">{t('introduction.title')}</h2> <p className="mb-4">{t('introduction.content')}</p> </section> {/* Information We Collect */} <section className="mb-8"> <h2 className="text-2xl font-semibold mb-4">{t('collect.title')}</h2> <h3 className="text-xl font-semibold mb-3">{t('collect.account.title')}</h3> <p className="mb-2">{t('collect.account.content')}</p> <ul className="list-disc pl-6 mb-4 space-y-1"> <li>{t('collect.account.items.name')}</li> <li>{t('collect.account.items.email')}</li> <li>{t('collect.account.items.profile')}</li> <li>{t('collect.account.items.provider')}</li> </ul> <h3 className="text-xl font-semibold mb-3">{t('collect.userContent.title')}</h3> <ul className="list-disc pl-6 mb-4 space-y-1"> <li>{t('collect.userContent.items.posts')}</li> <li>{t('collect.userContent.items.comments')}</li> <li>{t('collect.userContent.items.votes')}</li> </ul> <h3 className="text-xl font-semibold mb-3">{t('collect.usage.title')}</h3> <ul className="list-disc pl-6 mb-4 space-y-1"> <li>{t('collect.usage.items.pages')}</li> <li>{t('collect.usage.items.searches')}</li> <li>{t('collect.usage.items.browser')}</li> <li>{t('collect.usage.items.ip')}</li> </ul> </section> {/* How We Use Information */} <section className="mb-8"> <h2 className="text-2xl font-semibold mb-4">{t('use.title')}</h2> <ul className="list-disc pl-6 space-y-2"> <li>{t('use.items.authentication')}</li> <li>{t('use.items.forum')}</li> <li>{t('use.items.personalization')}</li> <li>{t('use.items.analytics')}</li> <li>{t('use.items.communication')}</li> <li>{t('use.items.security')}</li> </ul> </section> {/* Public Parliamentary Data */} <section className="mb-8"> <h2 className="text-2xl font-semibold mb-4">{t('publicData.title')}</h2> <p className="mb-4">{t('publicData.content')}</p> <ul className="list-disc pl-6 space-y-1"> <li>{t('publicData.sources.parliament')}</li> <li>{t('publicData.sources.legisinfo')}</li> <li>{t('publicData.sources.lobbying')}</li> <li>{t('publicData.sources.canlii')}</li> </ul> </section> {/* Data Storage and Security */} <section className="mb-8"> <h2 className="text-2xl font-semibold mb-4">{t('security.title')}</h2> <p className="mb-4">{t('security.content')}</p> <h3 className="text-xl font-semibold mb-3">{t('security.infrastructure.title')}</h3> <ul className="list-disc pl-6 mb-4 space-y-1"> <li>{t('security.infrastructure.items.auth')}</li> <li>{t('security.infrastructure.items.hosting')}</li> <li>{t('security.infrastructure.items.database')}</li> <li>{t('security.infrastructure.items.encryption')}</li> </ul> <h3 className="text-xl font-semibold mb-3">{t('security.measures.title')}</h3> <ul className="list-disc pl-6 space-y-1"> <li>{t('security.measures.items.https')}</li> <li>{t('security.measures.items.oauth')}</li> <li>{t('security.measures.items.isolation')}</li> <li>{t('security.measures.items.monitoring')}</li> </ul> </section> {/* Third-Party Services */} <section className="mb-8"> <h2 className="text-2xl font-semibold mb-4">{t('thirdParty.title')}</h2> <p className="mb-4">{t('thirdParty.content')}</p> <ul className="list-disc pl-6 space-y-2"> <li> <strong>{t('thirdParty.services.supabase.name')}</strong> – {t('thirdParty.services.supabase.description')} ( <a href="https://supabase.com/privacy" target="_blank" rel="noopener noreferrer" className="text-primary hover:underline" > {t('thirdParty.privacyPolicy')} </a>) </li> <li> <strong>{t('thirdParty.services.google.name')}</strong> – {t('thirdParty.services.google.description')} ( <a href="https://policies.google.com/privacy" target="_blank" rel="noopener noreferrer" className="text-primary hover:underline" > {t('thirdParty.privacyPolicy')} </a>) </li> <li> <strong>{t('thirdParty.services.oauth.name')}</strong> – {t('thirdParty.services.oauth.description')} </li> </ul> </section> {/* User Rights */} <section className="mb-8"> <h2 className="text-2xl font-semibold mb-4">{t('rights.title')}</h2> <ul className="list-disc pl-6 space-y-2"> <li><strong>{t('rights.items.access.title')}</strong> – {t('rights.items.access.description')}</li> <li><strong>{t('rights.items.correction.title')}</strong> – {t('rights.items.correction.description')}</li> <li><strong>{t('rights.items.deletion.title')}</strong> – {t('rights.items.deletion.description')}</li> <li><strong>{t('rights.items.export.title')}</strong> – {t('rights.items.export.description')}</li> <li><strong>{t('rights.items.optOut.title')}</strong> – {t('rights.items.optOut.description')}</li> </ul> <p className="mt-4">{t('rights.contact')}</p> </section> {/* Cookies and Tracking */} <section className="mb-8"> <h2 className="text-2xl font-semibold mb-4">{t('cookies.title')}</h2> <p className="mb-4">{t('cookies.content')}</p> <ul className="list-disc pl-6 space-y-2"> <li><strong>{t('cookies.types.essential.title')}</strong> – {t('cookies.types.essential.description')}</li> <li><strong>{t('cookies.types.preferences.title')}</strong> – {t('cookies.types.preferences.description')}</li> <li><strong>{t('cookies.types.analytics.title')}</strong> – {t('cookies.types.analytics.description')}</li> </ul> </section> {/* Data Retention */} <section className="mb-8"> <h2 className="text-2xl font-semibold mb-4">{t('retention.title')}</h2> <ul className="list-disc pl-6 space-y-2"> <li><strong>{t('retention.items.accounts.title')}</strong> – {t('retention.items.accounts.description')}</li> <li><strong>{t('retention.items.forumPosts.title')}</strong> – {t('retention.items.forumPosts.description')}</li> <li><strong>{t('retention.items.logs.title')}</strong> – {t('retention.items.logs.description')}</li> </ul> </section> {/* Data Deletion Requests */} <section className="mb-8"> <h2 className="text-2xl font-semibold mb-4">{t('deletion.title')}</h2> <p className="mb-4">{t('deletion.intro')}</p> <h3 className="text-xl font-semibold mb-3">{t('deletion.howToRequest.title')}</h3> <p className="mb-2">{t('deletion.howToRequest.content')}</p> <ul className="list-disc pl-6 mb-4 space-y-1"> <li>{t('deletion.howToRequest.items.email')}</li> <li>{t('deletion.howToRequest.items.confirmation')}</li> <li>{t('deletion.howToRequest.items.reason')}</li> </ul> <h3 className="text-xl font-semibold mb-3">{t('deletion.timeline.title')}</h3> <ul className="list-disc pl-6 mb-4 space-y-1"> <li>{t('deletion.timeline.acknowledgment')}</li> <li>{t('deletion.timeline.completion')}</li> <li>{t('deletion.timeline.confirmation')}</li> </ul> <h3 className="text-xl font-semibold mb-3">{t('deletion.whatGetsDeleted.title')}</h3> <ul className="list-disc pl-6 mb-4 space-y-1"> <li>{t('deletion.whatGetsDeleted.items.account')}</li> <li>{t('deletion.whatGetsDeleted.items.profile')}</li> <li>{t('deletion.whatGetsDeleted.items.preferences')}</li> <li>{t('deletion.whatGetsDeleted.items.analytics')}</li> <li>{t('deletion.whatGetsDeleted.items.cookies')}</li> </ul> <h3 className="text-xl font-semibold mb-3">{t('deletion.whatGetsAnonymized.title')}</h3> <p className="mb-2">{t('deletion.whatGetsAnonymized.content')}</p> <ul className="list-disc pl-6 mb-2 space-y-1"> <li>{t('deletion.whatGetsAnonymized.items.posts')}</li> <li>{t('deletion.whatGetsAnonymized.items.comments')}</li> <li>{t('deletion.whatGetsAnonymized.items.votes')}</li> </ul> <p className="mb-4 italic text-sm">{t('deletion.whatGetsAnonymized.note')}</p> <h3 className="text-xl font-semibold mb-3">{t('deletion.exceptions.title')}</h3> <p className="mb-2">{t('deletion.exceptions.content')}</p> <ul className="list-disc pl-6 mb-4 space-y-1"> <li>{t('deletion.exceptions.items.legal')}</li> <li>{t('deletion.exceptions.items.fraud')}</li> <li>{t('deletion.exceptions.items.backups')}</li> </ul> <div className="bg-yellow-50 dark:bg-yellow-900/20 border-l-4 border-yellow-500 p-4 mb-4"> <h3 className="text-xl font-semibold mb-2">{t('deletion.noRecovery.title')}</h3> <p>{t('deletion.noRecovery.content')}</p> </div> </section> {/* Children's Privacy */} <section className="mb-8"> <h2 className="text-2xl font-semibold mb-4">{t('children.title')}</h2> <p>{t('children.content')}</p> </section> {/* International Users */} <section className="mb-8"> <h2 className="text-2xl font-semibold mb-4">{t('international.title')}</h2> <p>{t('international.content')}</p> </section> {/* Changes to Privacy Policy */} <section className="mb-8"> <h2 className="text-2xl font-semibold mb-4">{t('changes.title')}</h2> <p>{t('changes.content')}</p> </section> {/* Contact */} <section className="mb-8"> <h2 className="text-2xl font-semibold mb-4">{t('contact.title')}</h2> <p className="mb-4">{t('contact.content')}</p> <div className="bg-muted p-4 rounded-lg"> <p className="font-mono text-sm"> CanadaGPT<br /> Email: privacy@canadagpt.ca<br /> Website: https://canadagpt.ca </p> </div> </section> {/* Compliance */} <section className="mb-8"> <h2 className="text-2xl font-semibold mb-4">{t('compliance.title')}</h2> <p className="mb-2">{t('compliance.content')}</p> <ul className="list-disc pl-6 space-y-1"> <li>{t('compliance.laws.pipeda')}</li> <li>{t('compliance.laws.gdpr')}</li> <li>{t('compliance.laws.ccpa')}</li> </ul> </section> </div> </div> ); }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/northernvariables/FedMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server